package com.bidevalution.core.enums;

import com.bidevalution.core.constant.ApiConstant;

/**
 * @author huyiqi
 * @date 2019/11/11
 */
public enum ApiEnum {
    /**
     * 获取项目列表接口（建易）
     */
    GET_BIDDING_TENDER(ApiConstant.WEBSERVICE_URL_DATASERVICE, "GetBiddingTender", ApiConstant.TOKEN_JY,
            "", "", ApiConstant.DEFAULT_JY_DES_KEY, ApiConstant.DEFAULT_JY_DES_IV)
    /**
     * 招标文件导入结果反馈（建易）
     */
    ,BACK_TENDERING_DOCUMENTS(ApiConstant.WEBSERVICE_URL_DATASERVICE, "BackTenderingDocuments",
            ApiConstant.TOKEN_JY, "", "", ApiConstant.DEFAULT_JY_DES_KEY, ApiConstant.DEFAULT_JY_DES_IV)
    /**
     * 获取推过来文件的投标单位（建易）
     */
    ,GET_ENTER_FILE_PUSHED(ApiConstant.WEBSERVICE_URL_DATASERVICE, "GetEnterFilePushed",
            ApiConstant.TOKEN_JY, "", "", ApiConstant.DEFAULT_JY_DES_KEY, ApiConstant.DEFAULT_JY_DES_IV)
    /**
     * 获取推过来文件的投标单位（建易）
     */
    ,GET_ENTER_FILE_TO_BID(ApiConstant.WEBSERVICE_URL_DATASERVICE, "GetEnterFileToBid",
            ApiConstant.TOKEN_JY, "", "", ApiConstant.DEFAULT_JY_DES_KEY, ApiConstant.DEFAULT_JY_DES_IV)
    /**
     * 请求重新推送投标文件（建易）
     */
    ,ASK_RE_PUSH_FILE(ApiConstant.WEBSERVICE_URL_DATASERVICE, "AskRePushFile",
            ApiConstant.TOKEN_JY, "", "", ApiConstant.DEFAULT_JY_DES_KEY, ApiConstant.DEFAULT_JY_DES_IV)
    /**
     * 投标文件导入结果反馈（建易）
     */
    ,BACK_PUT_IN_RESULT(ApiConstant.WEBSERVICE_URL_DATASERVICE, "BackPutInResult",
            ApiConstant.TOKEN_JY, "", "", ApiConstant.DEFAULT_JY_DES_KEY, ApiConstant.DEFAULT_JY_DES_IV)
    /**
     * 推送標錄（建易）
     */
    ,GET_PROJECT_BL_UPDATE(ApiConstant.WEBSERVICE_URL_SERVICE, "GetProjectBLUpdate",
            ApiConstant.TOKEN_JY_BL, "", "", "", null)
    /**
     * 验证专家（方欣）
     */
    ,GET_EXPORT_INFO(ApiConstant.WEBSERVICE_URL_EXPORTZJINFOSERVICE, "GetExportInfoByCardIDName",
            "", "", "", "", null)
    /**
     * 获取投标单位保证金缴纳信息（方欣）
     */
    ,ACCEPT_SERVICE_BANK_RETURN(ApiConstant.WEBSERVICE_URL_GETDATA, "AcceptServiceBankReturn",
            "", ApiConstant.ACCOUNT_FX, ApiConstant.PASS_FX, "", null)
    /**
     * 获取投标单位资质审核信息（方欣）
     */
    ,GET_ENTERPRISE_CHECK(ApiConstant.WEBSERVICE_URL_GETDATA, "GetEnterpriseCheck",
            "", ApiConstant.ACCOUNT_FX, ApiConstant.PASS_FX, "", null)
    /**
     * 推送中標信息數據（方欣）
     */
    ,Accept_Service_Data(ApiConstant.WEBSERVICE_URL_ACCEPTSERVICE, "AcceptServiceData",
            "", ApiConstant.ACCOUNT_FX, ApiConstant.PASS_FX, "", null)
    /**
     * 抓取中標信息數據（方欣）
     */
    ,GetPBSGS(ApiConstant.WEBSERVICE_URL_GETDATA, "GetPBSGS",
            "", ApiConstant.ACCOUNT_FX, ApiConstant.PASS_FX, "", null)
    /**
     * 推送中标结果PDF（方欣）
     */
    ,GetFile(ApiConstant.WEBSERVICE_URL_GETDATA, "GetFile",
            "", ApiConstant.ACCOUNT_FX, ApiConstant.PASS_FX, "", null)
    /**
     * 获取招标文件附件下载地址（T9）
     */
    ,GET_PRO_FILE(ApiConstant.HTTP_URL_T9, "getProFile.api", ApiConstant.TOKEN_T9, "", "", "", null)
    /**
     * 获取招标保证金信息（T9）
     */
    ,GET_DEPOSIT(ApiConstant.HTTP_URL_T9, "getDeposit.api", ApiConstant.TOKEN_T9, "", "", "", null)
    /**
     * 推送工程量清单（T9）
     */
    ,SEND_LIST(ApiConstant.HTTP_URL_T9, "saveGclqd.api", ApiConstant.TOKEN_T9, "", "", "", null)
    /**
     * 获取评标参数（IDS）
     */
    ,GET_AUDIT_PARAMS(ApiConstant.HTTP_URL_IDS, "queryBidEvaluationInfo.shtml", ApiConstant.TOKEN_T9, "", "", "", null)
    /**
     * 获取K1K2（T9）
     */
    ,GET_K1K2(ApiConstant.HTTP_URL_T9, "getParamK1K2.api", ApiConstant.TOKEN_T9, "", "", "", null)
    ;

    ApiEnum(String url, String method, String token, String account, String password, String desKey, byte[] desIv) {
        this.url = url;
        this.method = method;
        this.token = token;
        this.account = account;
        this.password = password;
        this.desKey = desKey;
        this.desIv = desIv;
    }

    private String url;
    private String method;
    private String token;
    private String account;
    private String password;
    private String desKey;
    private byte[] desIv;

    public String getUrl() {
        return url;
    }

    public String getMethod() {
        return method;
    }

    public String getToken() {
        return token;
    }

    public String getAccount() {
        return account;
    }

    public String getPassword() {
        return password;
    }

    public String getDesKey() {
        return desKey;
    }

    public byte[] getDesIv() {
        return desIv;
    }

}
